package com.jayzers.service.impl;

import java.util.List;

import org.apache.commons.dbutils.handlers.BeanListHandler;

import com.jayzers.bean.AdminInfoBean;
import com.jayzers.bean.AdminInfoBean1;
import com.jayzers.db.DBProvider;
import com.jayzers.service.ILoginService;
import com.jayzers.utils.MyUtils;

public class LoginServiceImpl implements ILoginService {
	@Override
	public List<AdminInfoBean> queryLoginInfo(AdminInfoBean adminB) {
		// 调用db层进行数据库操作
		// 登录查询语句
		String sql = "select * from admininfo where adminname= ? and adminpsw= ? ";
		// List <AdminInfoBean> lst = MyUtils.getInstance(DBProvider.class).query(sql,
		// new BeanListHandler<>(AdminInfoBean.class),
		// adminB.getAdminname(),adminB.getAdminpsw());
		List<AdminInfoBean> lst = MyUtils.getInstance(DBProvider.class).query(sql,
				new BeanListHandler<>(AdminInfoBean.class), adminB.getAdminname(), adminB.getAdminpsw());

		// 返回结果
		System.out.println(lst.toString());
		return lst;
	}

	@Override
	public int saveOrUpdateAdminInf(AdminInfoBean adminB) {
		// 默认返回值
		int i = 0;
		// 新增和修改的区别在于：参数实体类的主键字段是否为null，为null则是新增操作，不为null则是修改操作
		// 新增的sql语句
		if (adminB != null) {
			// 新增操作
			if (adminB.getAdminid() == null) {
				// 新增sql语句
				String strSql = "insert into admininfo(adminname,adminpas,adminaddress,admintel,adminregdate,adminimgs) values(?,?,?,?,to_date(?,'yyyy-mm-dd hh24:mi:ss'),?)";
				// 调用db层进行数据库操作
				i = MyUtils.getInstance(DBProvider.class).update(strSql, adminB.getAdminname(), adminB.getAdminpsw(),
						adminB.getAdminaddress(), adminB.getAdmintel(),
						MyUtils.convertDate2String(adminB.getAdminregdate(), "yyyy-MM-dd HH:mm:ss"),
						adminB.getAdminimgs());
			} else {
				// 修改操作
			}
		}
		return i;
	}
	@Override
	public int saveOrUpdateAdminInfo(AdminInfoBean1 adminC) {
		// 默认返回值
		int i = 0;
		// 新增和修改的区别在于：参数实体类的主键字段是否为null，为null则是新增操作，不为null则是修改操作
		// 新增的sql语句
		if (adminC != null) {
			// 新增操作
			if (adminC.getAddname() == null) {
				// 新增sql语句
				String strSql = "insert into addaddress(addname,addtel,addadress) values(?,?,?)";
				// 调用db层进行数据库操作
				i = MyUtils.getInstance(DBProvider.class).update(strSql, adminC.getAddname(),
						 adminC.getAddtel(),adminC.getAddadress());
			} else {
				// 修改操作
			}
		}
		return i;
	}

	@Override
	public List<AdminInfoBean1> queryLoginInfo(AdminInfoBean1 adminC) {
		// 调用db层进行数据库操作
				// 登录查询语句
				String sql = "select * from addaddress where addname= ? and address= ? ";
				// List <AdminInfoBean> lst = MyUtils.getInstance(DBProvider.class).query(sql,
				// new BeanListHandler<>(AdminInfoBean.class),
				// adminB.getAdminname(),adminB.getAdminpsw());
				List<AdminInfoBean1> lst = MyUtils.getInstance(DBProvider.class).query(sql,
						new BeanListHandler<>(AdminInfoBean1.class), adminC.getAddname(), adminC.getAddadress());

				// 返回结果
				System.out.println(lst.toString());
				return lst;
	}
}
